Dynomotion

Group: DynoMotion Message: 11197 From: stuntready Date: 3/11/2015
Subject: Strange Z axis behavior part-2
I have atached Init program, trajectory settings and g-code as well.

The problem is very strange.

All servo drives and servo controllers are the same, also I have replaced Z and Y motors and controllers, and Z axis still failes, so it's not motor problem for sure.

After runnng G-code i noticed that in axis window in kmotion Ch2 (Z-axis) Dest and Position is different. Position runs away after each g-code run.X and Y pos and dest are equal as it should be. For example:

First Run : Z dest = 0; Z pos = 700.
Second Run : Z dest = 0; Z pos = 1400.
e.t.c.

Where should I look for problems ? Thx in advance.

Danchik.


  @@attachment@@
Group: DynoMotion Message: 11199 From: Tom Kerekes Date: 3/11/2015
Subject: Re: Strange Z axis behavior part-2 [3 Attachments]
Hi Danchik,

After each run can you tell if the Axis has physically drifted (encoder position is correct, Motor steps were lost) or is it in the correct physical position (Encoder Position is incorrect, motor steps were not lost)?  1400 counts would be a drift of 1400/50800 =  0.028 inches.

The closed loop feedback should be trying to keep stepping to make the Position match the desired Destination unless the Max Integrator or Max Output is limiting any further correction.  I believe your Init Program sets the limit at 10000 steps

After you observe the difference please run this program and record what is printed on the Console

#include "KMotionDef.h"
main()
{
    printf("Outputs %f %f %f\n",ch0->Output,ch1->Output,ch2->Output);
}

I notice that only your Z axis has no Low Pass filter on the feedback.  There is also P Gain specified.  This might be causing the Output to change at too high of a rate and generate Step Pulses at too high of a rate to be handled by your drivers.  Try adding a low pass filter like you have for X and Y and removing the P Gain to see if this is related to the problem.

Regards
TK




Group: DynoMotion Message: 11200 From: stuntready Date: 3/11/2015
Subject: Re: Strange Z axis behavior part-2 [3 Attachments]
Thx for your help Tom.

After each run I belive that encoder position is correct, and seems like motor steps were lost. 
So glass scale opereates correctly.

You can see that g-code I have sent, consist of contours on same Z and only A changes during program run.
I runed G-code and I see that some times during constant Z run Dest = Pos, sometimes it's differs on 10-20 points, sometimes 100 or higher, it's almost random. After I have decreased P gain, total error after program run on Z axis decreased as well, sometimes it goes back to zero position, so I will try to add Low pass filter and test again, I belive that P gain pulses so high and drive can't handle it.

Also Z axis is heavy, so going up and going down is little bit different moves, axis can go up rather fast, but going down with same V and A causes overshot and jerks. 
Next time I will add mechanical compensation to prevent this :)
Group: DynoMotion Message: 11208 From: stuntready Date: 3/13/2015
Subject: Re: Strange Z axis behavior part-2 [3 Attachments]
Hi Tom, thank you very much for help, I solved it and there was a bunch of problems :)

First af all, I have inverted step pulse and error become significianly lower but still was existing.

Also P gain was too big, I have reduced it and added Low pass filter, my bad I didn't pay atention on filters, it is powerfull solution on smoothing moves.

As well as servo amp was unable to handle  high freq. pulse train during P gain corection.

After all tuning i get maximum folowing error = 0.075 mm. 

Thx For you help. 
Danchik